@Lemon
3年前 提问
1个回答

模糊测试有哪些缺点

Simon
3年前

模糊测试的缺点:仅靠模糊测试无法全面了解整个安全威胁或bug、在处理不会导致程序崩溃的安全威胁时,例如某些病毒、蠕虫、木马等,模糊测试的效率较低、模糊测试只能检测简单的错误或威胁、为了有效地执行,这将需要大量的时间、设置带有随机输入的边值条件是非常有问题的。

模糊测试是一种自动或半自动的测试技术,常被用来发现软件/操作系统/网络的代码中的错误和安全性问题。

为什么要做模糊测试?

  • 通常,模糊测试会发现最严重的的安全错误或缺陷。
  • 当与黑箱测试、Beta测试和其他调试方法一起使用时,Fuzz测试会产生更有效的结果。
  • 模糊测试用于检测软件的脆弱性。这是一种非常经济有效的测试技术。
  • 模糊测试是黑盒测试技术之一。模糊是黑客发现系统漏洞最常用的方法之一。

模糊测试的步骤包括以下基本的测试步骤:

  • 步骤一:识别目标系统

  • 步骤二:确定输入

  • 步骤三:生成模糊数据

  • 步骤四:使用模糊数据执行测试

  • 步骤五:监控系统的行为

  • 步骤六:记录缺陷

模糊测试的优点:

  • 提升了软件安全性的测试
  • 模糊测试发现的通常是严重的错误,而且是容易被黑客攻击的错误
  • 模糊测试可以发现那些由于时间和资源限制而无法被测试人员发现的错误

模糊测试的缺点:

  • 仅靠模糊测试无法全面了解整个安全威胁或bug。
  • 在处理不会导致程序崩溃的安全威胁时,例如某些病毒、蠕虫、木马等,模糊测试的效率较低。
  • 模糊测试只能检测简单的错误或威胁。
  • 为了有效地执行,这将需要大量的时间。
  • 设置带有随机输入的边值条件是非常有问题的,但是现在使用基于用户输入的确定性算法,大多数测试人员解决了这个问题。

在软件工程中,Fuzz测试显示应用程序中存在bug。模糊不能保证在应用程序中完全检测出bug。但是通过使用Fuzz技术,它确保了应用程序的健壮性和安全性,因为这种技术有助于暴露大多数常见的漏洞。